Prototype Model

SDLC

Prototype Model

The prototype model requires that before carrying out the development of actual software, a working prototype of the system should be built. A prototype is a toy implementation of the system. A prototype usually turns out to be a very crude version of the actual system, possible exhibiting limited functional capabilities, low reliability, and inefficient performance as compared to actual software. In many instances, the client only has a general view of what is expected from the software product. In such a scenario where there is an absence of detailed information regarding the input to the system, the processing needs, and the output requirement, the prototyping model may be employed.

Prototype Model - Design

waterfall

Phases in Prototype Model :

  • Requirements Gathering − Identify and collect initial requirements for the software. Understand the client's needs and expectations for the system.

  • Quick Design −Develop a quick and basic design based on the gathered requirements. This design serves as the foundation for the prototype.

  • Build Prototype −Implement a preliminary version of the software based on the quick design. The prototype is a functional but incomplete version of the final system.

  • User Evaluation − Present the prototype to users and stakeholders for evaluation. Gather feedback on the prototype's functionality, user interface, and other aspects.

  • Refinement − Use the feedback obtained during the evaluation phase to refine and enhance the prototype. Make necessary adjustments to features, design, or functionality.

  • Iterative Development −Repeat the process of building, evaluating, and refining the prototype in multiple iterations. Each iteration aims to improve the prototype based on user feedback.

Prototype Model - Advantages

  • Reduce the risk of incorrect user requirement

  • Good where requirement are changing/uncommitted

  • Regular visible process aids management

  • Support early product marketing

  • Reduce Maintenance cost.

  • Errors can be detected much earlier as the system is made side by side.

Prototype Model - Disadvantages

  • An unstable/badly implemented prototype often becomes the final product.

  • Difficult to know how long the project will last.

  • Easy to fall back into the code and fix without proper requirement analysis, design, customer evaluation, and feedback.

  • Prototyping tools are expensive.

  • Special tools & techniques are required to build a prototype.

  • It is a time-consuming process.